package com.parking.utils;

import java.sql.*;
import java.util.ResourceBundle;

public class DBUtil {
    //静态变量：类加载时执行。
    //并且是有顺序的。自上而下的顺序。
    //属性资源文件绑定
    private static ResourceBundle bundle=ResourceBundle.getBundle("resources.jdbc");//相当于从配置文件中获取一个流
    //根据属性文件的key获取value
    private static String driver=bundle.getString("driver");
    private static String url="jdbc:mysql://localhost:3306/parking";
    private static String user=bundle.getString("user");
    private static String password=bundle.getString("password");
    static {
        //注册驱动（注册驱动只需要注册一次，放在静态代码块当中。DBUtil类加载的时候执行）
        try {
            Class.forName(driver);
        }catch (ClassNotFoundException e){
            e.printStackTrace();
        }

    }
    /**
     *获取数据库链接对象
     *@return conn 链接对象
     */
    public static Connection getConnection() throws SQLException {
        //获取链接
       Connection conn= DriverManager.getConnection(url,user,password);
       return conn;
    }

    /**
     *数据库关闭释放资源
     * @param conn 链接对象
     * @param  ps 数据库操作对象
     * @param rs 结果集对象
     */
    public static void close(Connection conn, Statement ps, ResultSet rs) throws SQLException {
        if (rs !=null){
            rs.close();
        }
        if (ps !=null){
            ps.close();
        }
        if (conn !=null){
            conn.close();
        }
    }
}
